package com.yonyou.iuap.pub;

import java.util.UUID;

public class IDFactory
{
  private static IDFactory _idf = null;


  public static IDFactory getInstance()
  {
    if (_idf == null) {
    	_idf = new IDFactory();
    }
    return _idf;
  }

  public String getID()
  {
    String id = UUID.randomUUID().toString();
    return id;
  }
  public final String[] chars = new String[] { "a", "b", "c", "d", "e", "f",  
	  "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s",  
	  "t", "u", "v", "w", "x", "y", "z", "0", "1", "2", "3", "4", "5",  
	  "6", "7", "8", "9", "A", "B", "C", "D", "E", "F", "G", "H", "I",  
	  "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V",  
	  "W", "X", "Y", "Z" };  


  public  String generateUuid16() {  
	  StringBuffer shortBuffer = new StringBuffer();  
	  String uuid = getID().toString().replace("-", "");  
	  for (int i = 0; i < 10; i++) {  
		  String str = uuid.substring(i * 4, i * 4 + 4);  
		  int x = Integer.parseInt(str, 16);  
		  shortBuffer.append(chars[x % 0x3E]);  
	  }  
	  return shortBuffer.toString();  

  }  
}